package com.zmz.Stream;

import java.util.Arrays;
import java.util.List;

/**
 * Create with IntelliT IDEA
 *
 * @Author: zhengmingzhe
 * @Date: 2022/07/31/1:06
 * @Description:  测试stream的遍历和匹配
 */
public class Stream03 {
    public static  void main(String [] args){
        List<Integer> list = Arrays.asList(7,6,8,3,2,1,4);
        //顺序遍历 打印出7683214
        list.stream().forEach(System.out::print);
        System.out.println("__________");
        //并行遍历 每次顺序可能不一样
        list.parallelStream().forEach(System.out::print);
        System.out.println("__________");
        //遍历输出符合条件的元素
        //遍历大于6的元素 先找出大于6的元素再组装成新的集合再遍历 打印出7  8
        list.stream().filter(t->t>6).forEach(t->System.out.println(t));
        System.out.println("__________");
        //匹配第一个  打印出7
        System.out.println(list.stream().filter(t->t>6).findFirst().get());
        System.out.println("__________");
        //匹配任意(适用于并行流)  从大于6里面随机取一个
        System.out.println(list.parallelStream().filter(t->t>6).findAny().get());
        System.out.println("__________");
        //是否包含符合特定条件的元素  返回Boolean类型 判断集合是否包含该元素  打印出false
        System.out.println(list.stream().anyMatch(t->t>10));
    }
}
